// Este archivo trata las funcionabilidades del piloto
function iluminarPiloto(jsonRecibido)
{
    console.log("iluminarPiloto");
    var canvas = document.getElementById('sombra');
    var ctx = canvas.getContext('2d');
    var pilotoX = jsonRecibido.pilotoX;
    var pilotoY = jsonRecibido.pilotoY;
    ctx.beginPath();
    ctx.arc(pilotoX+12, pilotoY+12, 141, 0, 2 * Math.PI);
    ctx.fill();

    var territorioCanvas = document.getElementById("territorio");
    territorioCanvas.width = territorioCanvas.width;
    var sombraCanvasCTX = territorioCanvas.getContext("2d");
    sombraCanvasCTX.clearRect(0, 0, 1245, 700);
    sombraCanvasCTX.fillStyle = "rgba(0,0,0,0.5)";
    sombraCanvasCTX.fillRect(0, 0, 1245, 700);
    sombraCanvasCTX.globalCompositeOperation = 'destination-out';
    sombraCanvasCTX.beginPath();
    sombraCanvasCTX.arc(pilotoX+12, pilotoY+12, 141, 0, 2 * Math.PI);
    sombraCanvasCTX.fill();
}
function dibujarPiloto(jsonRecibido)
{
    var pilotoX = jsonRecibido.pilotoX;
    var pilotoY = jsonRecibido.pilotoY;
    var orientacionP = jsonRecibido.orientacion;
    var pie = jsonRecibido.piederecho;
    var pilotoCanvas = document.getElementById("piloto");
    pilotoCanvas.width = pilotoCanvas.width;
    var pilotoCanvasCTX = pilotoCanvas.getContext("2d");
    var img = new Image();
    var img2 = new Image();
    var idImagenPiloto = darImagenPilotoPorOrientacion(orientacionP, pie);
    img = document.getElementById(idImagenPiloto);
    pilotoCanvasCTX.drawImage(img, pilotoX, pilotoY);
    manejarVisibilidadTanquesEnJugador1(jsonRecibido);
    manejarVisibilidadPilotoEnJugador2(jsonRecibido);


}


function manejarVisibilidadTanquesEnJugador1(jsonRecibido){
/*  Con esta funcion, revisamos si el piloto ve o no a los tanques 
 * y los mostramos u ocultamos dependiendo del valor:
 *  jsonRecibido.jugador1VeTanque1 y jsonRecibido.jugador1VeTanque2*/    
    
    if (queJugador == "jugador1"){
        if (jsonRecibido.jugador1VeTanque1){
           $("#tanque1").css("display", "block");
        }
        else{
            $("#tanque1").css("display", "none");
        }
        if (jsonRecibido.jugador1VeTanque2){
           $("#tanque2").css("display", "block");
        }
        else{
            $("#tanque2").css("display", "none");
        }
    }
}
function darImagenPilotoPorOrientacion(orientacion, pie)
{
     switch( orientacion )
     {   
        case 0 :
              if(pie)
              {
                  return 'Soldado0';
              }
              else
              {
                  return 'SoldadoIzq0';
              }
              break;
        case 45 :
              if(pie)
              {
                  return 'Soldado45';
              }
              else
              {
                  return 'SoldadoIzq45';
              }
              break;
        case 90 :
              if(pie)
              {
                  return 'Soldado90';
              }
              else
              {
                  return 'SoldadoIzq90';
              }
              break;
        case 135 :
              if(pie)
              {
                  return 'Soldado135';
              }
              else
              {
                  return 'SoldadoIzq135';
              }
              break;
        case 180 :
              if(pie)
              {
                  return 'Soldado180';
              }
              else
              {
                  return 'SoldadoIzq180';
              }
              break;
        case 225 :
              if(pie)
              {
                  return 'Soldado225';
              }
              else
              {
                  return 'SoldadoIzq225';
              }
              break;  
        case 270 :
              if(pie)
              {
                  return 'Soldado270';
              }
              else
              {
                  return 'SoldadoIzq270';
              }
              break;
       case 315 :
              if(pie)
              {
                  return 'Soldado315';
              }
              else
              {
                  return 'SoldadoIzq315';
              }
              break;   
      }
}